1. Field of the Invention
This invention relates to a computer-implemented method and system for simulating strategic planning and operations. The method and system use a novel operations control language (OCL) for strategic planning and operations activity simulation. More particularly the OCL is a high-level programming language that is written in a simple text file. The OCL determines operational decisions of the system by emulating the behavior of a typical simulation user. The OCL also uses target blocks to develop and modify computer simulations within a computer based simulation system. Water resource planning and management is used throughout the description as a representative example of how the invention is applied.
2. Background of the Prior Art
Computer simulations are powerful work tools. It is commonly known that in a computer simulation, groups of objects having predefined properties or characteristics typically interact according to corresponding object behavior rules that have been programmed by the creators of the simulation. Interaction between objects generates one or more corresponding predefined results or consequences according to the hard-programmed behavior rules. A user can selectively place objects in a simulation and observe their resulting interactions on a display. The results generated by a given interaction can initiate further interactions between objects, resulting in a chain of events. Computer simulations thus allow complex situations to be created and modeled.
However, when developing the prior art simulation models for strategic planning and operations activities, a commonly known first problem is finding an effective method to describe the existing operating policies or objectives of the subject matter being simulated to the simulation system in order to know what is to be accomplished by the simulation. A second problem is to find and evaluate more effective alternatives to achieve the operating objectives. The first problem typically arises because of the difference between the way the operators describe operating policies, rules, guidelines, and objectives, and the way that these policies, rules, etc. are generally input to simulation models. Generally, the differences are more than semantic. In many cases, the operator's, policies, and rules, etc. cannot be put into the form required by the models. This is often so because operators use "adaptive" operating policies, i.e., their operating objectives depend on the current state of the system. In other cases, the difficulties arise because the actual operations are goal seeking in nature, and in ways that most simulation models cannot emulate. When operators cannot fully achieve all of their operating targets, they attempt to balance the deviations. For example, as applied to water resource management, an operator may try to balance the need to maintain the water quality and the need to maintain a storage reserve. This is often done because it seems to be the "right thing" to do, rather than because it is dictated by specific operating policies and rules.
Another typical problem with the prior art computer simulations is that they are inflexible in that they do not allow the predefined object characteristics and behavior rules to be easily modified, thereby limiting its capabilities as an analytical tool. Computer simulation designers have realized that simulations are much more useful and versatile if the user is allowed to modify object properties and behavior rules. Modifications of object properties and behavior rules to any significant degree, however, involves computer programming, which often requires changing the source code of the computer simulation. Generally, a programmer writes a series of IF THEN statements to develop or modify the program for the simulation, which can take a considerable amount of time. In addition, the typical computer simulation user does not posses the specialized skills and knowledge required for compute programming. Furthermore, over time, the continual modifications to a program make it difficult to maintain, and increasingly difficult to modify.
Another problem is changing the forms of the allowed operating policies for a computer simulation. Generally, changes in these policies must be entered through the reprogramming portions of the model. The code rapidly becomes so complex and convoluted that only expert programmers with extensive experience with the particular model are competent to make the desired changes. For example, as applied to water resource planning, when there is controversy over water in a complex system, the programmers tend to become heavily overworked due to the large effort involved in making modifications. The difficulties involved in modifying models can pose severe limits on the number of alternatives evaluated for planning and operational studies.
The shortcomings of the prior art method and systems can be summarized by their lack of the ability to: 1) create new forms of operations, and 2) build in logic to control operations using input from other models running interactively and 3) add and use new input parameters efficiently.
Therefore it is an object of this invention to provide a computer implemented method and system for simulating strategic planning and operations based on the use of a novel operations control language (OCL) that can determine operating goals and objectives of a computer simulation for a simulation user.
It is another object of this invention to provide in such system a method and system an OCL that emulates the goal-seeking behavior of operators.
It is another object of this invention to provide in such method and system a high level language that can be adapted to use with existing computer simulation systems.
It is another object of this invention to provide in such method and system an OCL that allows the user to enter a wide range of forms for the operating rules, policies and their parameters through input data.
It is an object of this invention to provide for the method and system of the invention a computer program that determines operating targets of a simulation system.
It is another object of this invention to provide for the method and system of the invention a program that use target blocks to minimize the need to use IF THEN statements in a computer simulation program.
It is a further object of this invention to provide for such method and system an OCL language that uses target blocks for programming and for ease in programming, reprogramming, updating and maintaining a model in a simulation system.